package com.kehutong.crm.service;

import com.kehutong.crm.entity.TrackRecord;
import org.coraframework.json.JSONObject;
import org.coraframework.orm.jdbc.Page;

/**
 * 跟进记录服务类
 * @author: liukunlong
 * @date: 2021-03-04 20:00
 */
public interface TrackRecordService {
    /**
     * 根据条件获取跟进记录列表
     * @param jsonObject 查询对象
     * @return 跟进记录列表
     * @throws Exception 操作异常
     */
    Page<TrackRecord> getTrackRecordList(JSONObject jsonObject) throws Exception;

    /***
     * 根据跟进记录标志获取跟进记录信息
     * @param id 跟进记录标志
     * @return 跟进记录对象
     * @throws Exception 操作异常
     */
    TrackRecord getTrackRecordById(String id) throws Exception;


    /**
     * 保存跟进记录
     * @param trackRecord 跟进记录对象
     * @return 跟进记录对象
     * @throws Exception 操作异常
     */
    TrackRecord saveTrackRecord(TrackRecord trackRecord) throws Exception;


    /**
     * 更新跟进记录
     * @param trackRecord 跟进记录对象
     * @return 跟进记录对象
     * @throws Exception 操作异常
     */
    TrackRecord updateTrackRecord(TrackRecord trackRecord) throws Exception;


    /***
     * 根据跟进记录标志删除跟进记录信息
     * @param id 跟进记录标志
     * @return 操作结果
     * @throws Exception 操作异常
     */
    Boolean deleteTrackRecordById(String id) throws Exception;
}
